#pragma once
#include "../../../../../utils/common_ptr.h"

class OracleDateTimeUnit {
public:
  static OracleDateTimeUnit_ptr  YEAR;
  static OracleDateTimeUnit_ptr  MONTH;
  static OracleDateTimeUnit_ptr  DAY;
  static OracleDateTimeUnit_ptr  HOUR;
  static OracleDateTimeUnit_ptr  MINUTE;
  static OracleDateTimeUnit_ptr  SECOND;
  static OracleDateTimeUnit_ptr  TIMEZONE_HOURE;
  static OracleDateTimeUnit_ptr  TIMEZONE_MINUTE;
  static OracleDateTimeUnit_ptr  TIMEZONE_REGION;
  static OracleDateTimeUnit_ptr  TIMEZONE_ABBR;

  string_ptr name;
  uint64_t mask;
  OracleDateTimeUnit(uint64_t mask, string_ptr name);
};
